FROM php:7.4-fpm

# 更换为阿里云镜像源以提高下载速度
RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list \
    && sed -i 's/security.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list

# 安装PHP扩展和依赖
RUN apt-get update && apt-get install -y \
    libfreetype6-dev \
    libjpeg62-turbo-dev \
    libpng-dev \
    libzip-dev \
    zip \
    unzip \
    git \
    && docker-php-ext-configure gd --with-freetype --with-jpeg \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install pdo_mysql \
    && docker-php-ext-install mysqli \
    && docker-php-ext-install zip \
    && docker-php-ext-install bcmath \
    && docker-php-ext-install fileinfo

# 安装扩展（分离为单独层，避免破坏 apt 缓存）
COPY redis-5.3.7.tgz /tmp/redis-5.3.7.tgz
# 复制本地 swoole 源码包
COPY swoole-4.8.13.tgz /tmp/swoole-4.8.13.tgz

# 安装 swoole 和 redis 扩展（离线安装）
RUN pecl install /tmp/swoole-4.8.13.tgz && docker-php-ext-enable swoole \
    && pecl install /tmp/redis-5.3.7.tgz  && docker-php-ext-enable redis

# 安装Composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

# 设置工作目录
WORKDIR /app

